package com.sansan.qiangji.service.inter.base;

import com.sansan.qiangji.entity.base.Product;
import com.sansan.qiangji.entity.base.example.ProductExample;
import com.sansan.qiangji.form.base.ProductListForm;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ProductService {
    int updateProducts(List<Product> products);

    List<Product> selectProducts(List<Product> products);

    int insertProducts(List<Product> products);

    List<Product> findByProductCodeOrProductName(String productCode, String productName);

    long countByExample(ProductExample example);

    int deleteByExample(ProductExample example);

    int deleteByPrimaryKey(Integer productId);

    int insert(Product record);

    int insertSelective(Product record);

    List<Product> selectByExample(ProductExample example);

    Product selectByPrimaryKey(Integer productId);

    int updateByExampleSelective(@Param("record") Product record, @Param("example") ProductExample example);

    int updateByExample(@Param("record") Product record, @Param("example") ProductExample example);

    int updateByPrimaryKeySelective(Product record);

    int updateByPrimaryKey(Product record);

    List<Product> selectListCondition(ProductListForm form);
}
